import Vue from 'vue'
import App from './App.vue'
import router from './router'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
import request from './utils/request.js'
import JSONbig from 'json-bigint'
import Breadcrumb from './components/breadcrumb.vue'
import Channel from './components/channel.vue'
import Cover from './components/cover.vue'

Vue.config.productionTip = false
Vue.prototype.$http = request
// Vue是一个构造器，它有一个原型对象prototype
// Vue.prototype.$eventBus 给Vue的原型对象补充一个名为$eventBus的属性
//     属性名是$eventBus，值是一个全新的Vue的实例: 用它当充当事件对象

// 如果给prototype上添加属性，则所有的实例都拥有$eventBus这个属性，
// 也就是所有的组件(组件也是Vue的实例)中都可以访问this.$eventBus!
Vue.prototype.$eventBus = new Vue()
Vue.use(ElementUI)

const str = '{"id": 1265139682652454912, "title": "csadada"}'
console.log('JSON.parse', JSON.parse(str))
// 对于JSONbig 它在处理数据时，会自动识别其中的 大数， 并以数组的格式保存起来
const d = JSONbig.parse(str)
console.log('JSONbig.parse')
console.dir(d)
console.log(d.id.toString())

Vue.component('Breadcrumb', Breadcrumb)
Vue.component('Channel', Channel)
Vue.component('Cover', Cover)

new Vue({
  router,
  render: h => h(App)
}).$mount('#app')
